Vabastage rakenduse tippjõudlus. See põhjalik juhend käsitleb New Relici integratsiooni, peamisi mõõdikuid ja parimaid tavasid globaalsete meeskondade jaoks.
Rakenduse jõudluse valdamine: põhjalik sukeldumine New Relici integratsiooni
Tänapäeva ülimalt konkurentsivõimelises digitaalses maastikus ei ole teie rakenduse jõudlus ainult tehniline mõõdik; see on põhiäri funktsioon. Aeglaselt laaditav leht, viivitav tehing või ootamatu viga võib olla erinevus lojaalse kliendi ja kaotatud võimaluse vahel. Globaalsete ettevõtete jaoks on see väljakutse suurenenud, nõudes järjepidevat, usaldusväärset jõudlust kasutajatele erinevates piirkondades, võrkudes ja seadmetes. Kuid kuidas saada nähtavus keerukatesse, hajutatud süsteemidesse, mis toetavad kaasaegseid rakendusi?
Vastus peitub rakenduse jõudluse jälgimises (APM). APM on arenenud lihtsast jälgimistööriistast keerukaks jälgitavuse praktikaks, pakkudes sügavaid teadmisi teie tarkvaravirna igas kihis. Selle valdkonna liidrite seas paistab New Relic silma kui terviklik platvorm, mis on loodud kaasaegsete, pilvepõhiste keskkondade keerukuse jaoks.
See juhend toimib teie põhjaliku sukeldumisena New Relici integreerimisse. Uurime APM-i aluseid, käime läbi integratsiooniprotsessi, dešifreerime peamised mõõdikud ja avastame parimad tavad selle võimsa platvormi kasutamiseks tehnilise tipptaseme ja äriedu saavutamiseks globaalses mastaabis.
Rakenduse jõudluse jälgimise (APM) mõistmine
Enne tööriista integreerimist on oluline mõista distsipliini. APM on enamat kui lihtsalt serveri võrgusoleku kontrollimine; see on lõppkasutaja kogemuse ja seda pakkuva koodi tervise mõistmine.
Mis on APM?
Rakenduse jõudluse jälgimine on tarkvararakenduste jõudluse, kättesaadavuse ja kasutajakogemuse jälgimise ja haldamise praktika. Tugev APM-lahendus pakub üksikasjalikke teadmisi, kogudes, analüüsides ja aruandes teleskoopiaandmeid teie rakendusest. Selle põhifunktsioonid hõlmavad tavaliselt:
- Lõppkasutaja kogemuse jälgimine: jõudluse mõõtmine kasutaja vaatenurgast, olgu see siis veebibrauseris või mobiilirakenduses. Seda nimetatakse sageli reaalajas kasutajate jälgimiseks (RUM).
- Rakenduse topoloogia kaardistamine: teie rakenduse komponentide ja nende sõltuvuste automaatne avastamine ja kaardistamine, mis annab visuaalse esituse teenuste suhtlemisest.
- Tehingute profileerimine: kasutajapäringute jälgimine – algsest klõpsust andmebaasipäringuteni ja tagasi – kitsaskohtade tuvastamiseks igas etapis.
- Kooditaseme diagnostika: täpse koodirea, funktsiooni või andmebaasipäringu täpsustamine, mis põhjustab jõudlusprobleemi või vea.
- Infrastruktuuri korrelatsioon: rakenduse jõudluse sidumine aluseks oleva infrastruktuuri (serverid, mahutid, pilveteenused) tervisega.
Miks on APM kaasaegsetele ettevõtetele kriitiline?
Varem oli monoliitset rakendust, mis töötas mõnel serveril, suhteliselt lihtne jälgida. Tänapäeva reaalsus koosneb mikroteenustest, serveriteta funktsioonidest, konteineritest ja keerulisest kolmandate osapoolte API-de võrgustikust, muutes käsitsi jälgimise võimatuks. APM on kriitiline, kuna see:
- Kaitseb tulu ja mainet: uuringud näitavad järjepidevalt otsest korrelatsiooni rakenduse jõudluse ja äri mõõdikute, nagu konversioonimäärad ja klientide säilitamine, vahel. APM aitab teil seda alumist rida kaitsta.
- Võimaldab ennetavat probleemide lahendamist: selle asemel, et oodata, kuni kasutajad probleemist teatavad, hoiatab APM teid reaalajas anomaaliate ja jõudluse halvenemise eest, võimaldades teil probleeme lahendada enne, kui need mõjutavad märkimisväärset arvu kasutajaid.
- Toetab DevOpsi ja SRE kultuuri: APM on DevOpsi ja saidi usaldusväärsuse inseneriteaduse (SRE) nurgakivi. See pakub arendus- ja operatsioonimeeskondadele ühist tõe allikat, hõlbustades kiiremaid vabastustsükleid, turvalisemaid juurutusi (nt kanaariväljaannete kaudu) ja andmepõhiseid otsuseid teenusetaseme eesmärkide (SLO) ümber.
- Pakub globaalseid jõudluse teadmisi: rahvusvahelistele ettevõtetele on oluline tagada, et Tokyos asuval kasutajal oleks sama hea kogemus kui Londonis või São Paulos asuval kasutajal. APM-i tööriistad pakuvad nähtavust jõudlusele erinevates geograafilistes piirkondades, aidates teil optimeerida sisu kohaletoimetamist ja infrastruktuuri paigutust.
Tutvustame New Relic: täisvirna jälgitavuse platvorm
Kuigi paljud tööriistad pakuvad APM-i võimalusi, on New Relic end kehtestanud liidrina, arenedes täisvirna jälgitavuse platvormiks. See tähendab, et selle eesmärk on pakkuda ühte, ühtset vaadet kogu teie tehnoloogiapinule.
Mis on New Relic?
New Relic on teenusena pakutav (SaaS) platvorm, mis võimaldab teil instrumenteerida, analüüsida, tõrkeotsingut teha ja optimeerida kogu oma tarkvaravirna. See võtab sisse, salvestab ja analüüsib tohutul hulgal teleskoopiaandmeid – mõõdikuid, sündmusi, logisid ja jälgi (MELT) – kõigist teie süsteemidest. New Relic One platvorm koondab need võimalused üheks ühtseks kogemuseks.
Selle põhikomponendid on:
- APM: sügavate, kooditaseme rakenduse jõudluse teadmiste jaoks.
- Infrastruktuur: hostide, konteinerite ja pilveteenuste (AWS, Azure, GCP) jälgimiseks.
- Logid: logiandmete korreleerimiseks rakenduse jõudlusprobleemidega.
- Brauser (RUM): esiotsa ja reaalajas kasutajate jälgimiseks.
- Sünteetika: proaktiivseks, simuleeritud kasutajate testimiseks globaalsetest kohtadest.
- Mobiil: natiivsete iOS-i ja Androidi rakenduste jõudluse jälgimiseks.
- Hajutatud jälitus: päringute jälgimiseks keerukates, mikroteenustel põhinevates arhitektuurides.
Peamised funktsioonid ja eristajad
- Täisvirna jälgitavus: võimalus sujuvalt navigeerida brauseris teatatud esiotsa aeglustumisest, läbi konkreetse APM-tehingu, alla suure CPU hoiatuse Kubernetes'i pauna kohta infrastruktuuris ja lõpuks täpsesse logisõnumisse, mis paljastab algpõhjuse.
- Rakenduslik intelligentsus (AI/ML): selle AI-mootor, New Relic AI, aitab automaatselt tuvastada anomaaliaid, vähendada hoiatuste müra, rühmitades seotud intsidente ja soovitades tõenäolisi algpõhjuseid, säästes inseneride väärtuslikku aega.
- NRQL (New Relic Query Language): võimas, SQL-sarnane päringukeel, mis võimaldab teil reaalajas uurida kõiki oma teleskoopiaandmeid. Saate esitada peaaegu iga küsimuse oma süsteemi jõudluse kohta ning luua kohandatud graafikuid ja armatuurlaudu.
- Programmeeritavus: New Relic One on ehitatud programmeeritava platvormina, mis võimaldab meeskondadel ehitada kohandatud rakendusi ja visualiseeringuid oma andmete põhjal, et rahuldada konkreetseid ärivajadusi.
Integratsiooniprotsess: samm-sammuline juhend
New Reliciga alustamine on loodud lihtsaks protsessiks. Integratsiooni tuum keerleb keelepõhise 'agendi' installimisel teie rakendusse.
Eeltingimused ja planeerimine
Enne sisse hüppamist aitab väike planeerimine palju:
- Looge New Relici konto: registreeruge New Relici kontole. Nad pakuvad heldet tasuta paketti, mis sobib suurepäraselt alustamiseks ja katsetamiseks.
- Määrake oma virn: teadke programmeerimiskeeli, raamistikke, andmebaase ja infrastruktuuri, mida teie rakendus kasutab.
- Määratlege peamised tehingud: tuvastage oma rakenduse kõige kriitilisemad kasutaja teekonnad (nt 'kasutaja sisselogimine', 'lisa ostukorvi', 'makse töötlemine'). Need on tehingud, mida soovite kõige täpsemalt jälgida.
- Vaadake turvalisus üle: vajate oma New Relici litsentsivõtit. Kohtle seda võtit nagu parooli. Mõistke oma kasutajabaasiga seotud andmekaitse-eeskirju (nt GDPR Euroopas või CCPA Californias) ja seadistage agent nii, et see ei koguks isiklikke identifitseeritavaid andmeid (PII), kui see on vajalik.
New Relici agendi installimine
New Relici agent on väike teek, mille lisate oma rakendusele. See töötab teie rakendusprotsessis, kogudes jõudlusandmeid ja teatades sellest turvaliselt New Relici platvormile. Paigaldusviis varieerub olenevalt keelest, kuid põhimõte on sama: instrumenteerige oma kood ilma suuremate koodimuudatusteta.
New Relici 'juhitud install' on soovitatav lähtepunkt, kuna see suudab sageli teie keskkonda tuvastada ja pakkuda kohandatud juhiseid. Siin on kõrgtasemeline ülevaade mõnedest populaarsetest keeltest:
- Java: agent on tavaliselt lisatud käsurea lipu abil (`-javaagent:newrelic.jar`), kui käivitate oma Java virtuaalmasina (JVM). Koodi muudatusi pole vaja.
- Python: agent installitakse läbi pipi (`pip install newrelic`) ja seejärel kasutatakse seda ümbrisena teie standardse käivitusjuhise ümber (nt `newrelic-admin run-program gunicorn ...`).
- .NET: MSI installer tavaliselt haldab seadistamist, seadistades .NET profileri automaatselt teie IIS-i rakenduspoolustesse või .NET Core'i protsessidesse.
- Node.js: agent installitakse npm-i kaudu (`npm install newrelic`) ja seejärel lisate `require('newrelic');` oma rakenduse põhiskripti esimeseks reaks.
- Ruby, PHP, Go: igal on oma hästi dokumenteeritud agendi installiprotsess, mis tavaliselt hõlmab pärli/paketi ja konfiguratsioonifaili lisamist.
Kui agent on installitud ja teie rakendus on taaskäivitatud, peaksid andmed hakkama teie New Relici kontol ilmuma mõne minuti jooksul.
Konfiguratsioon ja kohandamine
Vaikimisi agendi konfiguratsioon pakub hulgaliselt teavet, kuid selle kohandamine avab selle tõelise jõu. Seda tehakse tavaliselt konfiguratsioonifaili (nt `newrelic.yml` või keskkonnamuutujaid) kaudu.
- Määrake rakenduse nimi (`app_name`): see on kõige kriitilisem seade. See määrab, kuidas andmeid New Relici kasutajaliideses agregeeritakse. Kasutage järjepidevat nimede tähistust, eriti mikroteenuste keskkonnas (nt `[environment]-[service-name]`).
- Luba hajutatud jälgimine: see on mikroteenuste arhitektuuride jaoks kohustuslik. Veenduge, et see on lubatud kõigis teie teenustes, et saada terviklik nähtavus.
- Lisage kohandatud atribuudid: rikastage oma andmeid äri kontekstiga. Näiteks saate lisada atribuute nagu `userId`, `customerTier` või `productSKU` oma tehingutele. See võimaldab teil jõudlusandmeid mõtestatud viisil lõigata ja kuubistada (nt kas kõrgema taseme kliendid kogevad kiiremaid reageerimisaegu?).
- Looge kohandatud sündmused: teatage New Relicile konkreetsetest ärisündmustest (nt uue kasutaja registreerimine või lõpetatud ost), et neid jõudlusmõõdikutega korreleerida.
Andmete mõtestamine: peamised New Relici APM-i mõõdikud
Kui andmed on voolamas, kuvatakse teile mitmesuguseid graafikuid ja mõõdikuid. Lähme lahti kõige olulisemad, mis on leitud APM-i kokkuvõtte lehelt.
APM-i kokkuvõtte leht: teie juhtimiskeskus
See on teie rakenduse tervise lühivaade. See sisaldab tavaliselt graafikuid põhimõõdikute kohta valitud ajavahemiku jooksul.
Põhimõõdikud selgitatud
- Reaktsiooniaeg: see on keskmine aeg, mis kulub teie rakendusel päringu töötlemiseks. New Relic pakub võimsat värvikodeeritud jaotust selle kohta, kus see aeg kulub (nt Pythoni tõlkijas, andmebaasikõnes, välises API-kõnes). Reageerimisaja tõus on sageli probleemi esimene näitaja.
- Läbilaskevõime: mõõdetud päringutes minutis (RPM), see näitab, kui palju liiklust teie rakendus käsitleb. Reageerimisaja tõusu korreleerimine läbilaskevõime suurenemisega võib aidata teil tuvastada koormusega seotud jõudlusprobleeme.
- Vearaam: nende päringute protsent, mis põhjustavad käsitlemata vea või erandi. See on rakenduse töökindluse otsene mõõt. New Relic võimaldab teil süveneda iga vea virnajälgedesse.
- Apdexi skoor: Apdex on tööstusstandardi mõõdik kasutajate rahulolu mõõtmiseks rakenduse reageerimisajaga. See on lihtsustatud skoor vahemikus 0 (vastuvõetamatu) kuni 1 (suurepärane). Määratlete rahuldava reageerimisaja läve 'T'. Kiiremad reaktsioonid kui T on 'Rahul', reaktsioonid vahemikus T kuni 4T on 'Taluv', ja kõik aeglasemad on 'Frustreeritud'. Apdexi skoor on suurepärane viis jõudluse teavitamiseks mitte-tehnilistele sidusrühmadele.
Sukeldumine sügavamale tehingute ja jälgede abil
Kokkuvõtlikud mõõdikud on suurepärased probleemi tuvastamiseks, kuid algpõhjuse leidmiseks on vaja sügavamaid tööriistu.
- Tehingud: New Relic rühmitab päringud nende lõpp-punkti või kontrolleri järgi (nt `/api/v1/users` või `UserController#show`). Tehingute leht võimaldab teil neid sorteerida, et leida kõige aeglasemad, aeganõudvamad või kõige sagedamini kutsutud tehingud.
- Tehingujäljed: eriti aeglase üksikpäringu jaoks jäädvustab New Relic üksikasjaliku 'tehingujälje'. See on joavaade, mis näitab iga funktsioonikõnet, andmebaasipäringut ja välist kõnet, mis selle päringu ajal tehti, koos täpsete ajastustega. Siin saate täpsustada selle ühe aeglase SQL-päringu või ebaefektiivse tsükli.
- Hajutatud jälitus: mikroteenuste arhitektuuris võib üks kasutaja klõps käivitada päringuid viies, kümnes või isegi enamas teenuses. Hajutatud jälgimine õmbleb need üksikud päringud kokku üheks sidusaks jäljeks. See võimaldab teil näha päringu täielikku teekonda üle teenuste piiride, määrates, milline konkreetne teenus on keerulises töövoos kitsaskoht. See on kaasaegsete rakenduste arhitektuuride jaoks absoluutselt oluline võimekus.
Täpsem jälgitavus New Reliciga
Tõeline jälgitavus tuleneb APM-i andmete ühendamisest ülejäänud süsteemi teleskoopiga.
Lisaks APM-ile: täisvirna integreerimine
- Infrastruktuuri jälgimine: installides New Relici infrastruktuuragendi oma hostidesse või Kubernetes'i klastrisse, saate otseselt korreleerida rakenduse aeglustumise CPU tippkoormusega konkreetses serveris või mälulekkega mahutis.
- Logide haldamine: konfigureerige oma rakenduse logimisraamistik logide edastamiseks New Relicile. See võimaldab teil näha asjakohaseid logisõnumeid otse APM-i vea või tehingujälje kontekstis, kõrvaldades vajaduse tööriistade vahel vahetada.
- Brauser (RUM): APM-agent mõõdab serveripoolset jõudlust. Brauseri agent mõõdab seda, mida kasutaja tegelikult kogeb, sealhulgas võrgustiku latentsust ja aega, mis kulub brauseril lehe renderdamiseks (eesotsa jõudlus). Mõlema kombineerimine annab teile täieliku pildi.
- Sünteetiline jälgimine: ärge oodake, et tõelised kasutajad probleemi avastaksid. Kasutage New Relic Synthetics'i, et luua automatiseeritud skripte, mis kontrollivad pidevalt oma peamiste lõpp-punktide kättesaadavust ja jõudlust erinevatest kohtadest üle maailma. See on oluline globaalse kättesaadavuse tagamiseks ja SLA-de austamiseks.
Võimsate armatuurlaudade loomine
Vaikimisi kasutajaliides on võimas, kuid iga ettevõte on ainulaadne. Kasutades NRQL-i, saate luua kohandatud armatuurlaudu, mis on kohandatud erinevatele auditooriumidele:
- DevOpsi meeskonna armatuurlaud: võib kuvada reageerimisaega, veamäära ja CPU kasutamist konkreetse teenuse jaoks koos hiljutiste juurutusmärgistega.
- Ärijuhtkonna armatuurlaud: võib kuvada peamiste turgude Apdexi skoori, lõpetatud kasutajate registreerimiste arvu (kohandatud sündmus) ja kriitilise kolmanda osapoole makse API jõudlust.
Hoiatused ja proaktiivne jälgimine
Jälgimine ilma hoiatusteta on vaid vaatamine. Tugev hoiatuste strateegia on võtmetähtsusega.
- Määrake sisukad hoiatused: ärge lihtsalt hoiatage CPU kasutuse kohta. Hoiaatage mõõdikute kohta, mis mõjutavad otseselt kasutajat, nagu Apdexi skoori langus või kriitilise tehingu veamäära järsk tõus.
- Kasutage anomaaliate tuvastamist: staatilised läviväärtused (nt "hoiatada, kui reageerimisaeg > 2 sekundit") võivad olla mürarikkad. New Relici AI saab õppida teie rakenduse normaalseid jõudluse mustreid ja hoiatada teid ainult siis, kui on oluline kõrvalekalle, vähendades hoiatuste väsimust.
- Integreerige oma töövooga: saatke hoiatused tööriistadele, mida teie meeskonnad juba kasutavad, nagu Slack, Microsoft Teams, PagerDuty või ServiceNow, et tagada kiire reageerimine.
Parimad tavad New Relici integratsiooniks globaalses organisatsioonis
Suure või hajutatud organisatsiooni väärtuse maksimeerimiseks kaaluge neid parimaid tavasid:
- Standardiseerige nimede tähistused: järjepidev nimede skeem rakenduste jaoks (`[environment]-[team]-[service]`) muudab teenuste leidmise, filtreerimise ja hoiatamise lihtsaks.
- Kasutage siltimist: kasutage silte, et lisada metaandmeid oma rakendustele ja infrastruktuurile. Saate siltida vastavalt `meeskonnale`, `projektile`, `andmekeskuse-piirkonnale` või `äriüksusele`, et hõlpsasti luua filtreeritud vaateid ja armatuurlaudu.
- Rakendage rollipõhine juurdepääsukontroll (RBAC): New Relic võimaldab teil luua erinevaid rolle ja kontosid, et tagada meeskondadele juurdepääs ainult neile asjakohastele ja lubatud andmetele.
- Soodustage jälgitavuse kultuuri: jõudlus on kõigi vastutusel. Julgustage arendajaid enne koodi ühendamist New Relicit vaatama, andke tootejuhtidele võimalus mõista, kuidas funktsioonid reaalmaailmas toimivad, ja andke tugimeeskondadele andmed, mida nad vajavad klientide probleemide tõrkeotsinguks tõhusalt.
- Regulaarselt üle vaadata ja täpsustada: jälgitavus ei ole "seadista ja unusta" ülesanne. Vaadake regulaarselt üle oma hoiatuse läviväärtused, armatuurlaua asjakohasus ja kohandatud instrumenteerimine, et tagada, et need pakuvad endiselt väärtust teie rakenduse arenedes.
Järeldus: andmete muundamine tegutsemiskõlblikeks teadmisteks
New Relici integreerimine on enamat kui lihtsalt agendi installimine; see on süsteemi sügava nähtavuse praktika omaksvõtmine. See muudab abstraktsed probleemid, nagu "rakendus on aeglane", konkreetseteks, tegutsemiskõlblikeks teadmisteks, nagu "`getUserPermissions` päring võtab koormuse all 1500 ms indeksi puudumise tõttu."
Instrumenteerides tõhusalt oma rakendusi New Reliciga, annate oma meeskondadele võimaluse kiiremini ja enesekindlamalt liikuda. Loote andmepõhise kultuuri, kus otsused põhinevad reaalmaailma jõudlusel, mitte oletustel. Iga globaalse ettevõtte jaoks ei ole see võime jälgida, mõista ja optimeerida digitaalset kogemust enam luksus – see on edu põhiline nõue.
Teie teekond jälgitavusesse algab selle esimese agendi installimisega. Alustage kriitilise rakendusega, uurige andmeid, seadistage mõned peamised hoiatused ja hakake küsimusi esitama. Teadmised, mida saate, ei paranda mitte ainult teie rakenduse jõudlust, vaid annavad ka hindamatut tagasisidet kogu tarkvaraarenduse elutsüklisse.